# -*- coding: utf-8 -*-
# Copyright 2025 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
from google.cloud.apihub_v1 import gapic_version as package_version

__version__ = package_version.__version__


from .services.api_hub import ApiHubAsyncClient, ApiHubClient
from .services.api_hub_collect import ApiHubCollectAsyncClient, ApiHubCollectClient
from .services.api_hub_curate import ApiHubCurateAsyncClient, ApiHubCurateClient
from .services.api_hub_dependencies import (
    ApiHubDependenciesAsyncClient,
    ApiHubDependenciesClient,
)
from .services.api_hub_discovery import (
    ApiHubDiscoveryAsyncClient,
    ApiHubDiscoveryClient,
)
from .services.api_hub_plugin import ApiHubPluginAsyncClient, ApiHubPluginClient
from .services.host_project_registration_service import (
    HostProjectRegistrationServiceAsyncClient,
    HostProjectRegistrationServiceClient,
)
from .services.linting_service import LintingServiceAsyncClient, LintingServiceClient
from .services.provisioning import ProvisioningAsyncClient, ProvisioningClient
from .services.runtime_project_attachment_service import (
    RuntimeProjectAttachmentServiceAsyncClient,
    RuntimeProjectAttachmentServiceClient,
)
from .types.apihub_service import (
    ApiHubResource,
    CreateApiOperationRequest,
    CreateApiRequest,
    CreateAttributeRequest,
    CreateDependencyRequest,
    CreateDeploymentRequest,
    CreateExternalApiRequest,
    CreateSpecRequest,
    CreateVersionRequest,
    DeleteApiOperationRequest,
    DeleteApiRequest,
    DeleteAttributeRequest,
    DeleteDependencyRequest,
    DeleteDeploymentRequest,
    DeleteExternalApiRequest,
    DeleteSpecRequest,
    DeleteVersionRequest,
    GetApiOperationRequest,
    GetApiRequest,
    GetAttributeRequest,
    GetDefinitionRequest,
    GetDependencyRequest,
    GetDeploymentRequest,
    GetExternalApiRequest,
    GetSpecContentsRequest,
    GetSpecRequest,
    GetVersionRequest,
    ListApiOperationsRequest,
    ListApiOperationsResponse,
    ListApisRequest,
    ListApisResponse,
    ListAttributesRequest,
    ListAttributesResponse,
    ListDependenciesRequest,
    ListDependenciesResponse,
    ListDeploymentsRequest,
    ListDeploymentsResponse,
    ListExternalApisRequest,
    ListExternalApisResponse,
    ListSpecsRequest,
    ListSpecsResponse,
    ListVersionsRequest,
    ListVersionsResponse,
    SearchResourcesRequest,
    SearchResourcesResponse,
    SearchResult,
    UpdateApiOperationRequest,
    UpdateApiRequest,
    UpdateAttributeRequest,
    UpdateDependencyRequest,
    UpdateDeploymentRequest,
    UpdateExternalApiRequest,
    UpdateSpecRequest,
    UpdateVersionRequest,
)
from .types.collect_service import (
    ApiData,
    APIMetadata,
    ApiMetadataList,
    CollectApiDataRequest,
    CollectApiDataResponse,
    CollectionType,
    DeploymentMetadata,
    SpecMetadata,
    VersionMetadata,
)
from .types.common_fields import (
    Api,
    ApiHubInstance,
    ApiOperation,
    Attribute,
    AttributeValues,
    AuthConfig,
    AuthType,
    ConfigValueOption,
    ConfigVariable,
    ConfigVariableTemplate,
    Definition,
    Dependency,
    DependencyEntityReference,
    DependencyErrorDetail,
    Deployment,
    DiscoveredApiObservation,
    DiscoveredApiOperation,
    Documentation,
    ExternalApi,
    GoogleServiceAccountConfig,
    HttpOperation,
    HttpOperationDetails,
    Issue,
    Linter,
    LintResponse,
    LintState,
    OpenApiSpecDetails,
    OperationDetails,
    OperationMetadata,
    Owner,
    Path,
    PluginCategory,
    Point,
    Range,
    Schema,
    Secret,
    Severity,
    SourceMetadata,
    Spec,
    SpecContents,
    SpecDetails,
    Version,
)
from .types.curate_service import (
    ApplicationIntegrationEndpointDetails,
    CreateCurationRequest,
    Curation,
    DeleteCurationRequest,
    Endpoint,
    GetCurationRequest,
    ListCurationsRequest,
    ListCurationsResponse,
    UpdateCurationRequest,
)
from .types.discovery_service import (
    GetDiscoveredApiObservationRequest,
    GetDiscoveredApiOperationRequest,
    ListDiscoveredApiObservationsRequest,
    ListDiscoveredApiObservationsResponse,
    ListDiscoveredApiOperationsRequest,
    ListDiscoveredApiOperationsResponse,
)
from .types.host_project_registration_service import (
    CreateHostProjectRegistrationRequest,
    GetHostProjectRegistrationRequest,
    HostProjectRegistration,
    ListHostProjectRegistrationsRequest,
    ListHostProjectRegistrationsResponse,
)
from .types.linting_service import (
    GetStyleGuideContentsRequest,
    GetStyleGuideRequest,
    LintSpecRequest,
    StyleGuide,
    StyleGuideContents,
    UpdateStyleGuideRequest,
)
from .types.plugin_service import (
    ActionExecutionDetail,
    ActionType,
    CreatePluginInstanceRequest,
    CreatePluginRequest,
    CurationConfig,
    CurationType,
    DeletePluginInstanceRequest,
    DeletePluginRequest,
    DisablePluginInstanceActionRequest,
    DisablePluginInstanceActionResponse,
    DisablePluginRequest,
    EnablePluginInstanceActionRequest,
    EnablePluginInstanceActionResponse,
    EnablePluginRequest,
    ExecutePluginInstanceActionRequest,
    ExecutePluginInstanceActionResponse,
    ExecutionStatus,
    GatewayType,
    GetPluginInstanceRequest,
    GetPluginRequest,
    ListPluginInstancesRequest,
    ListPluginInstancesResponse,
    ListPluginsRequest,
    ListPluginsResponse,
    Plugin,
    PluginActionConfig,
    PluginInstance,
    PluginInstanceAction,
    UpdatePluginInstanceRequest,
)
from .types.provisioning_service import (
    CreateApiHubInstanceRequest,
    DeleteApiHubInstanceRequest,
    GetApiHubInstanceRequest,
    LookupApiHubInstanceRequest,
    LookupApiHubInstanceResponse,
)
from .types.runtime_project_attachment_service import (
    CreateRuntimeProjectAttachmentRequest,
    DeleteRuntimeProjectAttachmentRequest,
    GetRuntimeProjectAttachmentRequest,
    ListRuntimeProjectAttachmentsRequest,
    ListRuntimeProjectAttachmentsResponse,
    LookupRuntimeProjectAttachmentRequest,
    LookupRuntimeProjectAttachmentResponse,
    RuntimeProjectAttachment,
)

__all__ = (
    "ApiHubAsyncClient",
    "ApiHubCollectAsyncClient",
    "ApiHubCurateAsyncClient",
    "ApiHubDependenciesAsyncClient",
    "ApiHubDiscoveryAsyncClient",
    "ApiHubPluginAsyncClient",
    "HostProjectRegistrationServiceAsyncClient",
    "LintingServiceAsyncClient",
    "ProvisioningAsyncClient",
    "RuntimeProjectAttachmentServiceAsyncClient",
    "APIMetadata",
    "ActionExecutionDetail",
    "ActionType",
    "Api",
    "ApiData",
    "ApiHubClient",
    "ApiHubCollectClient",
    "ApiHubCurateClient",
    "ApiHubDependenciesClient",
    "ApiHubDiscoveryClient",
    "ApiHubInstance",
    "ApiHubPluginClient",
    "ApiHubResource",
    "ApiMetadataList",
    "ApiOperation",
    "ApplicationIntegrationEndpointDetails",
    "Attribute",
    "AttributeValues",
    "AuthConfig",
    "AuthType",
    "CollectApiDataRequest",
    "CollectApiDataResponse",
    "CollectionType",
    "ConfigValueOption",
    "ConfigVariable",
    "ConfigVariableTemplate",
    "CreateApiHubInstanceRequest",
    "CreateApiOperationRequest",
    "CreateApiRequest",
    "CreateAttributeRequest",
    "CreateCurationRequest",
    "CreateDependencyRequest",
    "CreateDeploymentRequest",
    "CreateExternalApiRequest",
    "CreateHostProjectRegistrationRequest",
    "CreatePluginInstanceRequest",
    "CreatePluginRequest",
    "CreateRuntimeProjectAttachmentRequest",
    "CreateSpecRequest",
    "CreateVersionRequest",
    "Curation",
    "CurationConfig",
    "CurationType",
    "Definition",
    "DeleteApiHubInstanceRequest",
    "DeleteApiOperationRequest",
    "DeleteApiRequest",
    "DeleteAttributeRequest",
    "DeleteCurationRequest",
    "DeleteDependencyRequest",
    "DeleteDeploymentRequest",
    "DeleteExternalApiRequest",
    "DeletePluginInstanceRequest",
    "DeletePluginRequest",
    "DeleteRuntimeProjectAttachmentRequest",
    "DeleteSpecRequest",
    "DeleteVersionRequest",
    "Dependency",
    "DependencyEntityReference",
    "DependencyErrorDetail",
    "Deployment",
    "DeploymentMetadata",
    "DisablePluginInstanceActionRequest",
    "DisablePluginInstanceActionResponse",
    "DisablePluginRequest",
    "DiscoveredApiObservation",
    "DiscoveredApiOperation",
    "Documentation",
    "EnablePluginInstanceActionRequest",
    "EnablePluginInstanceActionResponse",
    "EnablePluginRequest",
    "Endpoint",
    "ExecutePluginInstanceActionRequest",
    "ExecutePluginInstanceActionResponse",
    "ExecutionStatus",
    "ExternalApi",
    "GatewayType",
    "GetApiHubInstanceRequest",
    "GetApiOperationRequest",
    "GetApiRequest",
    "GetAttributeRequest",
    "GetCurationRequest",
    "GetDefinitionRequest",
    "GetDependencyRequest",
    "GetDeploymentRequest",
    "GetDiscoveredApiObservationRequest",
    "GetDiscoveredApiOperationRequest",
    "GetExternalApiRequest",
    "GetHostProjectRegistrationRequest",
    "GetPluginInstanceRequest",
    "GetPluginRequest",
    "GetRuntimeProjectAttachmentRequest",
    "GetSpecContentsRequest",
    "GetSpecRequest",
    "GetStyleGuideContentsRequest",
    "GetStyleGuideRequest",
    "GetVersionRequest",
    "GoogleServiceAccountConfig",
    "HostProjectRegistration",
    "HostProjectRegistrationServiceClient",
    "HttpOperation",
    "HttpOperationDetails",
    "Issue",
    "LintResponse",
    "LintSpecRequest",
    "LintState",
    "Linter",
    "LintingServiceClient",
    "ListApiOperationsRequest",
    "ListApiOperationsResponse",
    "ListApisRequest",
    "ListApisResponse",
    "ListAttributesRequest",
    "ListAttributesResponse",
    "ListCurationsRequest",
    "ListCurationsResponse",
    "ListDependenciesRequest",
    "ListDependenciesResponse",
    "ListDeploymentsRequest",
    "ListDeploymentsResponse",
    "ListDiscoveredApiObservationsRequest",
    "ListDiscoveredApiObservationsResponse",
    "ListDiscoveredApiOperationsRequest",
    "ListDiscoveredApiOperationsResponse",
    "ListExternalApisRequest",
    "ListExternalApisResponse",
    "ListHostProjectRegistrationsRequest",
    "ListHostProjectRegistrationsResponse",
    "ListPluginInstancesRequest",
    "ListPluginInstancesResponse",
    "ListPluginsRequest",
    "ListPluginsResponse",
    "ListRuntimeProjectAttachmentsRequest",
    "ListRuntimeProjectAttachmentsResponse",
    "ListSpecsRequest",
    "ListSpecsResponse",
    "ListVersionsRequest",
    "ListVersionsResponse",
    "LookupApiHubInstanceRequest",
    "LookupApiHubInstanceResponse",
    "LookupRuntimeProjectAttachmentRequest",
    "LookupRuntimeProjectAttachmentResponse",
    "OpenApiSpecDetails",
    "OperationDetails",
    "OperationMetadata",
    "Owner",
    "Path",
    "Plugin",
    "PluginActionConfig",
    "PluginCategory",
    "PluginInstance",
    "PluginInstanceAction",
    "Point",
    "ProvisioningClient",
    "Range",
    "RuntimeProjectAttachment",
    "RuntimeProjectAttachmentServiceClient",
    "Schema",
    "SearchResourcesRequest",
    "SearchResourcesResponse",
    "SearchResult",
    "Secret",
    "Severity",
    "SourceMetadata",
    "Spec",
    "SpecContents",
    "SpecDetails",
    "SpecMetadata",
    "StyleGuide",
    "StyleGuideContents",
    "UpdateApiOperationRequest",
    "UpdateApiRequest",
    "UpdateAttributeRequest",
    "UpdateCurationRequest",
    "UpdateDependencyRequest",
    "UpdateDeploymentRequest",
    "UpdateExternalApiRequest",
    "UpdatePluginInstanceRequest",
    "UpdateSpecRequest",
    "UpdateStyleGuideRequest",
    "UpdateVersionRequest",
    "Version",
    "VersionMetadata",
)
